[API] customer-service
Tài liệu này nhằm mục đích quản lý số lượng và chức năng của endpoints trong command-service. Người đọc có thể dựa vào tên của files và tên endpoints để dễ dàng kiểm tra thông tin apis source code.
API Endpoints
Response
- 200: Success
- 403: Forbidden
- 400: Bad Request
Auth
- Auth Type : Bearer Token
index.js
Delete Customer
- Route:
/callcenter/:callcenter_id/customer - Params:
callcenter_id - Method: DELETE
- Return Format:
- Success: 200
{ success: true } - Failure: 500
{ success: false, error: err.message }
- Success: 200
activity.js
Create Activity
- Route:
/callcenter/:callcenter_id/activity - Params:
callcenter_id - Query:
versionSchema - Body:
creator, text, type (note, calllog, reminder), body - Method: POST
- Return Format:
- Success: 200
{ success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get Activity
- Route:
/callcenter/:callcenter_id/activity/:activity_id - Method: GET
- Params:
callcenter_id, activity_id - Return Format:
- Success: 200
{ success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Update Activity
- Route:
/callcenter/:callcenter_id/activity/:activity_id - Method: PUT
- Params:
callcenter_id, activity_id - Query:
versionSchema - Body:
_id, createdAt, updatedAt, type, creator - Return Format:
- Success: 200
{ success: true} - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Delete Activity
- Route:
/callcenter/:callcenter_id/activity/:activity_id - Method: DELETE
- Params:
callcenter_id, activity_id - Query:
versionSchema - Return Format:
- Success:
{ success: true } - Failure:
{ success: false, error: { message: error } }
- Success:
Post Activity for Contact
- Route:
/callcenter/:callcenter_id/contact/:contact_id/activity - Method: POST
- Params:
callcenter_id, contact_id - Query:
versionSchema - Body:
creator, text, type (note, calllog, reminder), body - Return Format:
- Success: 200
{ success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get Activity for Contact
- Route:
/callcenter/:callcenter_id/contact/:contact_id/activity/:activity_id - Method: GET
- Params:
callcenter_id, contact_id, activity_id - Return Format:
- Success: 200
{ success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Update Activity for Contact
- Route:
/callcenter/:callcenter_id/contact/:contact_id/activity/:activity_id - Method: PUT
- Params:
callcenter_id, contact_id, activity_id - Body:
_id, createdAt, updatedAt, type, idContact, creator - Return Format:
- Success: 200
{ success: true } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Delete Activity for Contact
- Route:
/callcenter/:callcenter_id/contact/:contact_id/activity/:activity_id - Method: DELETE
- Params:
callcenter_id, contact_id, activity_id - Query:
versionSchema - Return Format:
- Success:
{ success: true } - Failure:
{ success: false, error: { message: error } }
- Success:
Get Activities for Contact
Route:
/callcenter/:callcenter_id/contact/:contact_id/activitiesMethod: GET
Params:
callcenter_id, contact_idQuery:
type, time, time1, time2, liken, callTags, from, to, page, limit, isReconnected, uuid, statusReturn Format:
- Success: 200
{ success: true, result, hasMore } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Delete Activities for Contact
Route:
/callcenter/:callcenter_id/contact/:contact_id/activitiesMethod: DELETE
Params:
callcenter_id, contact_idQuery:
versionSchemaReturn Format:
- Success: 200
{ success: true } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get Activities for Phone
Route:
/callcenter/:callcenter_id/phone/:phone/activitiesMethod: GET
Params:
callcenter_id, phoneQuery:
type, time, time1, time2, liken, callTags, from, to, page, limit, isReconnected, statusReturn Format:
- Success: 200
{ success: true, result, hasMore } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Delete Activities for Phone
- Route:
/callcenter/:callcenter_id/phone/:phone/activities - Method: Delete
- Params:
callcenter_id, phone, contact_id - Return Format:
- Success: 200
{ success: true } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get All Activities
Route:
/callcenter/:callcenter_id/activitiesMethod: GET
Params:
callcenter_idQuery:
idAgent, callTags, all, page, limit, from, to, lookup, queryReturn Format:
- Success: 200
{ success: true, result, hasMore, count } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Create Activities
- Route:
/callcenter/:callcenter_id/activities - Method: POST
- Params:
callcenter_id - Body:
idAgent, callTags, all, page, limit, from, to, lookup, idGroup, query - Return Format:
- Success: 200
{ success: true, result, hasMore, count } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Update Activities
- Description: Update many.
- Route:
/callcenter/:callcenter_id/activities - Method: POST
- Params:
callcenter_id - Query:
versionSchema - Body:
filter, data - Return Format:
- Success: 200
{ success: true } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get Activities Sum
Route:
/callcenter/:callcenter_id/activities/sumMethod: GET
Params:
callcenter_idQuery:
idAgent,filterReturn Format:
- Success: 200
{ success: true, result: final } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get Activities Count
- Description: Retrieve the count of activities.
- Route:
/callcenter/:callcenter_id/activities/count - Method: GET
- Params:
callcenter_id - Query:
idAgent,filter - Return Format:
- Success: 200
{ success: true, result: final } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get Activities Chart
- Route:
/callcenter/:callcenter_id/activities/chart - Method: GET
- Params:
callcenter_id - Query:
idAgent,filter - Return Format:
- Success: 200
{ success: true, result: {} } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Add Tags for Activity
- Route:
/callcenter/:callcenter_id/activity/:activity_id/tags - Method: POST
- Params:
callcenter_id, activity_id - Query:
versionSchema - Body:
list - Return Format:
- Success: 200
{ success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Delete Tags for Activity
- Route:
/callcenter/:callcenter_id/activity/:activity_id/tags - Method: DELETE
- Params:
callcenter_id, activity_id - Query:
versionSchema - Return Format:
- Success: 200
{ success: true } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
agentgroup.js
Add Phones to Agent Group
- Route:
/callcenter/:callcenter_id/agentgroup/:agent_id/phones - Method: POST
- Params:
callcenter_id, agent_id - Query:
not - Return Format:
- Success:
{ success: true, result } - Failure:
{ success: false, error: { message: error } }
- Success:
Add List Contact Group to Agent
Route:
/callcenter/:idCallcenter/agentgroup/:idAgent/groupsMethod: POST
Params:
callcenter_id, idAgentBody:
listContactGroupQuery:
versionSchemaReturn Format:
- Success:
{ success: true, result } - Failure:
{ success: false, error: { message: error } }
- Success:
call_log.js
Create a New Call Log
- Route:
/callcenter/:callcenter_id/calllog - Method: POST
- Params:
callcenter_id - Body:
direction (incoming, outgoing), status (missed, rejected, busy, connected, canceled, wrong-number, success, no-answer), phone, source, destination, start, end, duration - Query:
versionSchema - Return Format:
- Success:
{ success: true, result } - Failure:
{ success: false, error: { message: error } }
- Success:
Get Call Log By ID
Route:
/callcenter/:callcenter_id/calllog/:calllog_idMethod: GET
Params:
callcenter_id, calllog_idReturn Format:
- Success:
{ success: true, result } - Failure:
{ success: false, error: { message: error } }
Update Call Log By ID
- Success:
Route:
/callcenter/:callcenter_id/calllog/:calllog_idMethod: PUT
Params:
callcenter_id, calllog_idBody:
_id, createdAt, updatedAtReturn Format:
- Success:
{ success: true, result } - Failure:
{ success: false, error: { message: error } }
- Success:
Delete Call Log
- Route:
/callcenter/:callcenter_id/calllog/:calllog_id - Method: DELETE
- Params:
callcenter_id, calllog_id - Return Format:
- Success:
{ success: true } - Failure:
{ success: false, error: { message: error } }
- Success:
Get Call Logs
- Route:
/callcenter/:callcenter_id/calllogs - Method: GET
- Params:
callcenter_id - Query:
all, page, limit, filter, idAgent, from, to - Return Format:
- Success:
- GET:
{ success: true, result: result.splice(0, limit), hasMore, count })
- GET:
- Failure:
{ success: false, error: { message: error } }
- Success:
Update Call Logs
- Route:
/callcenter/:callcenter_id/calllogs - Method: PUT
- Params:
callcenter_id - Body:
filter, data - Return Format:
- Success:
- PUT:
{ success: true }
- PUT:
- Failure:
{ success: false, error: { message: error } }
- Success:
contact_field.js
Create Contact Field
- Route:
/callcenter/:callcenter_id/contactfield - Method: POST
- Params:
callcenter_id - Query:
versionSchema - Body:
field, fieldName, fieldDisplayName, idGroup - Return Format:
- Success: 200
{ success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get Contact Field
Route:
/callcenter/:callcenter_id/contactfield/:contactfield_idMethod: GET
Params:
callcenter_id, contactfield_idReturn Format:
- Success: 200
{ success: true, result } - Failure: 400
{ success: false, error: { message: error } }
Update Contact Field
- Success: 200
Route:
/callcenter/:callcenter_id/contactfield/:contactfield_idMethod: PUT
Params:
callcenter_id, contactfield_idQuery:
versionSchemaBody:
fieldReturn Format:
- Success: 200
{ success: true } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Delete Contact Field
- Route:
/callcenter/:callcenter_id/contactfield/:contactfield_id - Method: DELETE
- Params:
callcenter_id, contactfield_id - Query:
versionSchema - Return Format:
- Success: 200
{ success: true } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get All Contact Fields
Route:
/callcenter/:callcenter_id/contactfields/allMethod: GET
Params:
callcenter_idQuery:
req.queryReturn Format:
- Success: 200
{ success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
contact_group.js
Create Contact Group
- Route:
/callcenter/:callcenter_id/contactgroup - Method: POST
- Params:
callcenter_id - Query:
versionSchema - Body:
name, creator, maingroup, description, list - Return Format:
- Success: 200
{ success: true, result: final} - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get Contact Group
- Route:
/callcenter/:callcenter_id/contactgroup/:contactgroup_id - Method: GET
- Params:
contactgroup_id, callcenter_id - Return Format:
- Success: 200
success: true, result: result} - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Put Contact Group
Route:
/callcenter/:callcenter_id/contactgroup/:contactgroup_idMethod: PUT
Query:
versionSchemaBody:
'name, description, deleted, mainGroup, subjectGroup,mainGroupNameReturn Format:
- Success: 200
{ success: true } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Delete Contact Group
Route:
/callcenter/:callcenter_id/contactgroup/:contactgroup_idMethod: DELETE
Params:
callcenter_id, contactgroup_idQuery:
versionSchemaReturn Format:
- Success: 200
{ success: true } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get All Contact Groups
- Route:
/callcenter/:callcenter_id/contactgroups - Method: GET
- Params:
callcenter_id - Query:
idAgent, limit , page - Return Format:
- Success: 200
{ success: true, result: result.splice(0, limit), hasMore: hasMore } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Search Contact Groups
- Route:
/callcenter/:callcenter_id/contactgroups/search - Method: GET
- Params:
callcenter_id - Query:
idAgent, q, mode, page, limit - Return Format:
- Success: 200
{ success: true, result: result.splice(0, limit), hasMore } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Add Contacts in Contact Group
- Route:
/callcenter/:callcenter_id/contactgroup/:contactgroup_id/contacts - Method: POST
- Params:
callcenter_id, contactgroup_id - Query:
versionSchema - Body:
list - Return Format:
- Success: 200
{ success: true, result: list } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get Contacts in Contact Group
- Route:
/callcenter/:callcenter_id/contactgroup/:contactgroup_id/contacts - Method: GET
- Params:
callcenter_id, contactgroup_id - Query:
all, direction,status, limit, page - Return Format:
- Success: 200
{ success: true, result: result.splice(0, limit),hasMore: hasMore, count: count } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Delete Contacts in Contact Group
- Route:
/callcenter/:callcenter_id/contactgroup/:contactgroup_id/contacts - Method: DELETE
- Params:
callcenter_id, contactgroup_id - Query:
versionSchema - Body:
list - Return Format:
- Success: 200
res.json({ success: true, result: list } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Search Contacts in Contact Group
Route:
/callcenter/:callcenter_id/contactgroup/:contactgroup_id/contacts/searchMethod: GET
Params:
callcenter_id, contactgroup_idQuery:
q, limit, pageReturn Format:
- Success: 200
{ success: true, result: result.splice(0, limit), hasMore, count } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Add Agents in Contact Group
- Route:
/callcenter/:callcenter_id/contactgroup/:contactgroup_id/agents - Method: POST
- Params:
callcenter_id, contactgroup_id - Query:
versionSchema - Body:
list - Return Format:
- Success: 200
{ success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get Agents in Contact Group
Description: Get agents in a contact group.
Route:
/callcenter/:callcenter_id/contactgroup/:contactgroup_id/agentsMethod: GET
Params:
callcenter_id, contactgroup_idReturn Format:
Success: 200
{ success: true, result }Failure: 400
{ success: false, error: { message: error } }
Delete Agents in Contact Group
- Route:
/callcenter/:callcenter_id/contactgroup/:contactgroup_id/agents - Method: DELETE
- Params:
callcenter_id, contactgroup_id - Query:
versionSchema - Body:
list - Return Format:
- Success: 200
{ success: true } - Failure: 400b
{ success: false, error: { message: error } }
- Success: 200
Add Agents in Contact Groups
- Route:
/callcenter/:callcenter_id/contactgroups/agents - Method: POST
- Params:
callcenter_id - Query:
versionSchema - Body:
list, all, ids - Return Format:
- Success: 200
{ success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Delete Agents in Contact Groups
- Description: Add agents from multiple contact groups.
- Route:
/callcenter/:callcenter_id/contactgroups/agents - Method: DELETE
- Params:
callcenter_id - Query:
versionSchema - Body:
list, all, ids - Return Format:
- Success: 200
{ success: true } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
contact.js
Create a Contact
- Route:
/callcenter/:callcenter_id/contact - Method: POST
- Params: ``
- Query: ``
- Body: ``
- Return Format:
- Success: 200
success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get Phone Information
- Route:
/callcenter/:callcenter_id/phone - Method: GET
- Params:
callcenter_id - Query:
phone, idAgent - Return Format:
- Success: 200
{ success: true >= 0, result } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get A Contact
- Route:
/callcenter/:callcenter_id/contact/:contact_id - Method: GET
- Params:
contact_id, callcenter_id - Return Format:
- Success : 200
{ success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success : 200
Update A Contact
- Route:
/callcenter/:callcenter_id/contact/:contact_id - Method: Update
- Params:
contact_id, callcenter_id - Query:
versionSchema - Body:
length, _id, createdAt, updatedAt, phone, phone2, phone3, birthday - Return Format:
- Success : 200
{ success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success : 200
Delete A Contact
- Route:
/callcenter/:callcenter_id/contact/:contact_id - Method: DELETE
- Params:
contact_id, callcenter_id - Query:
versionSchema - Return Format:
- Success : 200
{ success: true } - Failure: 400
{ success: false, error: { message: error } }
- Success : 200
Get Contacts
Route:
/callcenter/:callcenter_id/contactsMethod: GET
Params:
callcenter_idQuery:
contactIDs, phones, time, liken, by, order, limit, page, idAgent, all, direction, status, groupReturn Format:
- Success: 200
{ success: true, result: result.splice(0, limit), hasMore: true, count: 0 } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Post Contacts
- Route:
/callcenter/:callcenter_id/contacts - Method: POST
- Params:
callcenter_id - Query:
versionSchema - Body:
list - Return Format:
- Success: 200
{ success: true, result }) - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Delete Contacts
Route:
/callcenter/:callcenter_id/contactsMethod: DELETE
Params:
callcenter_idQuery:
versionSchemaBody:
all, idGroup, contactIDsReturn Format:
- Success : 200
{ success: true } - Failure: 400
{ "success": false, "error": { message: error }}
- Success : 200
Update Contacts
Route:
/callcenter/:callcenter_id/contactsMethod: UPDATE
Params:
callcenter_id, versionSchemaBody:
listContact, allReturn Format:
- Success : 200
{ success: true } - Failure: 400
{ "success": false, "error": { message: error }}
- Success : 200
Delete a Contact Group
- Route:
/callcenter/:callcenter_id/contacts/group - Method: DELETE
- Params:
callcenter_id, versionSchema - Body:
listContact, all - Return Format:
- Success: 200
{success: true} - Failure: 400
{"success": false, "error": { "message": "" } }
- Success: 200
Search Contacts
- Route:
/callcenter/:callcenter_id/contacts/search - Method: GET
- Params:
callcenter_id - Query:
page, on, mode, q, idAgent - Return Format:
- Success: 200
{ success: true, result, count } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get Contact Groups
Route:
/callcenter/:callcenter_id/contact/:contact_id/groupsMethod: GET
Params:
callcenter_id, contact_idQuery:
limit, page, allReturn Format:
- Success : 200
{ success: true, result: result.splice(0, limit), hasMore } - Failure: 400
{ success: false, error: { message: error } }
- Success : 200
Delete Contact Groups
Route:
/callcenter/:callcenter_id/contact/:contact_id/groupsMethod: DELETE
Params:
callcenter_id, contact_idQuery:
versionSchemaBody:
limit, allReturn Format:
- Success : 200
{ success: true }) - Failure : 400
{ success: false, error: { message: error } }
- Success : 200
groupField.js
Create A GroupField
- Route:
/callcenter/:callcenter_id/groupfield - Method: POST
- Params:
callcenter_id - Query:
versionSchema - Body:
name, displayName - Return Format:
- Success: 200
{ success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get A GroupField
- Route:
/callcenter/:idCallcenter/groupfield/:id - Method: GET
- Params:
idCallcenter, id - Return Format:
- Success: 200
{ success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Update A GroupField
- Route:
/callcenter/:idCallcenter/groupfield/:id - Method: PUT
- Params:
idCallcenter, id - Query:
versionSchema - Body:
name, displayName - Return Format:
- Success: 200
{ success: true, data: result }) - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Delete A GroupField By ID
- Route:
/callcenter/:idCallcenter/groupfield/:id - Method: DELETE
- Params:
idCallcenter, id - Query:
versionSchema - Return Format:
- Success: 200
{ success: true } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get All GroupFields
Route:
/callcenter/:idCallcenter/groupfields/allMethod: GET
Params:
idCallcenterQuery:
req.queryReturn Format:
- Success:
{ success: true, result } - Failure:
{ success: false, error: { message: error } }
- Success:
template.js
Create A Template
- Route:
/callcenter/:callcenter_id/template - Method: POST
- Params:
callcenter_id - Query:
versionSchema - Body:
name,type (sms, callTag) - Return Format:
- Success: 200
success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Update Template By TemplateID
- Route:
/callcenter/:callcenter_id/template/:template_id - Method: PUT
- Params:
callcenter_id, template_id - Query:
versionSchema - Body:
name, title, deleted - Return Format:
- Success: 200
{ success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Delete Template By TemplateID
- Route:
/callcenter/:callcenter_id/template/:template_id - Method: DELETE
- Params:
callcenter_id, template_id - Query:
versionSchema - Return Format:
- Success: 200
{ success: true } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200
Get All Templates
- Route:
/callcenter/:callcenter_id/templates/all - Method: GET
- Params:
callcenter_id - Query:
req.query - Return Format:
- Success: 200
{ success: true, result } - Failure: 400
{ success: false, error: { message: error } }
- Success: 200